have a soft spot in one's heart for (someone) - English Synonyms Dictionary